JS跑程式碼時是由上至下,hoisting定義是把變項移到最前面先執行。
console.log(a)
結果:a--> is not defined
var a = 3;
console.log(a)
結果:a--> 3
console.log(a)
var a = 3;
結果: a-->undefined
var a
移至最上層,但不賦予值function count() {
console.log('hello!');
}
count();
結果-->hello
count();
function count() {
console.log('hello!');
}
結果-->hello
會把變項funtion(){.....}
先移到最上方執行,因此執行碼count()
不管於函式的上方或下方宣告,結果都為hello。